package vaadin.scala.server

import vaadin.scala.server.mixins.FontIconMixin

object FontAwesome {
  import com.vaadin.server.FontAwesome._

  val Glass = FontAwesome(GLASS)
  val Music = FontAwesome(MUSIC)
  val Search = FontAwesome(SEARCH)
  val EnvelopeO = FontAwesome(ENVELOPE_O)
  val Heart = FontAwesome(HEART)
  val Star = FontAwesome(STAR)
  val StarO = FontAwesome(STAR_O)
  val User = FontAwesome(USER)
  val Film = FontAwesome(FILM)
  val ThLarge = FontAwesome(TH_LARGE)
  val Th = FontAwesome(TH)
  val ThList = FontAwesome(TH_LIST)
  val Check = FontAwesome(CHECK)
  val Times = FontAwesome(TIMES)
  val SearchPlus = FontAwesome(SEARCH_PLUS)
  val SearchMinus = FontAwesome(SEARCH_MINUS)
  val PowerOff = FontAwesome(POWER_OFF)
  val Signal = FontAwesome(SIGNAL)
  val Cog = FontAwesome(COG)
  val TrashO = FontAwesome(TRASH_O)
  val Home = FontAwesome(HOME)
  val FileO = FontAwesome(FILE_O)
  val ClockO = FontAwesome(CLOCK_O)
  val Road = FontAwesome(ROAD)
  val Download = FontAwesome(DOWNLOAD)
  val ArrowCircleODown = FontAwesome(ARROW_CIRCLE_O_DOWN)
  val ArrowCircleOUp = FontAwesome(ARROW_CIRCLE_O_UP)
  val Inbox = FontAwesome(INBOX)
  val PlayCircleO = FontAwesome(PLAY_CIRCLE_O)
  val Repeat = FontAwesome(REPEAT)
  val Refresh = FontAwesome(REFRESH)
  val ListAlt = FontAwesome(LIST_ALT)
  val Lock = FontAwesome(LOCK)
  val Flag = FontAwesome(FLAG)
  val Headphones = FontAwesome(HEADPHONES)
  val VolumeOff = FontAwesome(VOLUME_OFF)
  val VolumeDown = FontAwesome(VOLUME_DOWN)
  val VolumeUp = FontAwesome(VOLUME_UP)
  val Qrcode = FontAwesome(QRCODE)
  val Barcode = FontAwesome(BARCODE)
  val Tag = FontAwesome(TAG)
  val Tags = FontAwesome(TAGS)
  val Book = FontAwesome(BOOK)
  val Bookmark = FontAwesome(BOOKMARK)
  val Print = FontAwesome(PRINT)
  val Camera = FontAwesome(CAMERA)
  val Font = FontAwesome(FONT)
  val Bold = FontAwesome(BOLD)
  val Italic = FontAwesome(ITALIC)
  val TextHeight = FontAwesome(TEXT_HEIGHT)
  val TextWidth = FontAwesome(TEXT_WIDTH)
  val AlignLeft = FontAwesome(ALIGN_LEFT)
  val AlignCenter = FontAwesome(ALIGN_CENTER)
  val AlignRight = FontAwesome(ALIGN_RIGHT)
  val AlignJustify = FontAwesome(ALIGN_JUSTIFY)
  val List = FontAwesome(LIST)
  val Outdent = FontAwesome(OUTDENT)
  val Indent = FontAwesome(INDENT)
  val VideoCamera = FontAwesome(VIDEO_CAMERA)
  val PictureO = FontAwesome(PICTURE_O)
  val Pencil = FontAwesome(PENCIL)
  val MapMarker = FontAwesome(MAP_MARKER)
  val Adjust = FontAwesome(ADJUST)
  val Tint = FontAwesome(TINT)
  val PencilSquareO = FontAwesome(PENCIL_SQUARE_O)
  val ShareSquareO = FontAwesome(SHARE_SQUARE_O)
  val CheckSquareO = FontAwesome(CHECK_SQUARE_O)
  val Arrows = FontAwesome(ARROWS)
  val StepBackward = FontAwesome(STEP_BACKWARD)
  val FastBackward = FontAwesome(FAST_BACKWARD)
  val Backward = FontAwesome(BACKWARD)
  val Play = FontAwesome(PLAY)
  val Pause = FontAwesome(PAUSE)
  val Stop = FontAwesome(STOP)
  val Forward = FontAwesome(FORWARD)
  val FastForward = FontAwesome(FAST_FORWARD)
  val StepForward = FontAwesome(STEP_FORWARD)
  val Eject = FontAwesome(EJECT)
  val ChevronLeft = FontAwesome(CHEVRON_LEFT)
  val ChevronRight = FontAwesome(CHEVRON_RIGHT)
  val PlusCircle = FontAwesome(PLUS_CIRCLE)
  val MinusCircle = FontAwesome(MINUS_CIRCLE)
  val TimesCircle = FontAwesome(TIMES_CIRCLE)
  val CheckCircle = FontAwesome(CHECK_CIRCLE)
  val QuestionCircle = FontAwesome(QUESTION_CIRCLE)
  val InfoCircle = FontAwesome(INFO_CIRCLE)
  val Crosshairs = FontAwesome(CROSSHAIRS)
  val TimesCircleO = FontAwesome(TIMES_CIRCLE_O)
  val CheckCircleO = FontAwesome(CHECK_CIRCLE_O)
  val Ban = FontAwesome(BAN)
  val ArrowLeft = FontAwesome(ARROW_LEFT)
  val ArrowRight = FontAwesome(ARROW_RIGHT)
  val ArrowUp = FontAwesome(ARROW_UP)
  val ArrowDown = FontAwesome(ARROW_DOWN)
  val Share = FontAwesome(SHARE)
  val Expand = FontAwesome(EXPAND)
  val Compress = FontAwesome(COMPRESS)
  val Plus = FontAwesome(PLUS)
  val Minus = FontAwesome(MINUS)
  val Asterisk = FontAwesome(ASTERISK)
  val ExclamationCircle = FontAwesome(EXCLAMATION_CIRCLE)
  val Gift = FontAwesome(GIFT)
  val Leaf = FontAwesome(LEAF)
  val Fire = FontAwesome(FIRE)
  val Eye = FontAwesome(EYE)
  val EyeSlash = FontAwesome(EYE_SLASH)
  val ExclamationTriangle = FontAwesome(EXCLAMATION_TRIANGLE)
  val Plane = FontAwesome(PLANE)
  val Calendar = FontAwesome(CALENDAR)
  val Random = FontAwesome(RANDOM)
  val Comment = FontAwesome(COMMENT)
  val Magnet = FontAwesome(MAGNET)
  val ChevronUp = FontAwesome(CHEVRON_UP)
  val ChevronDown = FontAwesome(CHEVRON_DOWN)
  val Retweet = FontAwesome(RETWEET)
  val ShoppingCart = FontAwesome(SHOPPING_CART)
  val Folder = FontAwesome(FOLDER)
  val FolderOpen = FontAwesome(FOLDER_OPEN)
  val ArrowsV = FontAwesome(ARROWS_V)
  val ArrowsH = FontAwesome(ARROWS_H)
  val BarChartO = FontAwesome(BAR_CHART_O)
  val TwitterSquare = FontAwesome(TWITTER_SQUARE)
  val FacebookSquare = FontAwesome(FACEBOOK_SQUARE)
  val CameraRetro = FontAwesome(CAMERA_RETRO)
  val Key = FontAwesome(KEY)
  val COGS = FontAwesome(com.vaadin.server.FontAwesome.COGS)
  val Comments = FontAwesome(COMMENTS)
  val ThumbsOUp = FontAwesome(THUMBS_O_UP)
  val ThumbsODown = FontAwesome(THUMBS_O_DOWN)
  val StarHalf = FontAwesome(STAR_HALF)
  val HeartO = FontAwesome(HEART_O)
  val SignOut = FontAwesome(SIGN_OUT)
  val LinkedInSquare = FontAwesome(LINKEDIN_SQUARE)
  val ThumbTack = FontAwesome(THUMB_TACK)
  val ExternalLink = FontAwesome(EXTERNAL_LINK)
  val SignIn = FontAwesome(SIGN_IN)
  val Trophy = FontAwesome(TROPHY)
  val GithubSquare = FontAwesome(GITHUB_SQUARE)
  val Upload = FontAwesome(UPLOAD)
  val LemonO = FontAwesome(LEMON_O)
  val Phone = FontAwesome(PHONE)
  val SquareO = FontAwesome(SQUARE_O)
  val BookmarkO = FontAwesome(BOOKMARK_O)
  val PhoneSquare = FontAwesome(PHONE_SQUARE)
  val Twitter = FontAwesome(TWITTER)
  val Facebook = FontAwesome(FACEBOOK)
  val GitHub = FontAwesome(GITHUB)
  val Unlock = FontAwesome(UNLOCK)
  val CreditCard = FontAwesome(CREDIT_CARD)
  val RSS = FontAwesome(com.vaadin.server.FontAwesome.RSS)
  val HddO = FontAwesome(HDD_O)
  val Bullhorn = FontAwesome(BULLHORN)
  val Bell = FontAwesome(BELL)
  val Certificate = FontAwesome(CERTIFICATE)
  val HandORight = FontAwesome(HAND_O_RIGHT)
  val HandOLeft = FontAwesome(HAND_O_LEFT)
  val HandOUp = FontAwesome(HAND_O_UP)
  val HandODown = FontAwesome(HAND_O_DOWN)
  val ArrowCircleLeft = FontAwesome(ARROW_CIRCLE_LEFT)
  val ArrowCircleRight = FontAwesome(ARROW_CIRCLE_RIGHT)
  val ArrowCircleUp = FontAwesome(ARROW_CIRCLE_UP)
  val ArrowCircleDown = FontAwesome(ARROW_CIRCLE_DOWN)
  val Globe = FontAwesome(GLOBE)
  val Wrench = FontAwesome(WRENCH)
  val Tasks = FontAwesome(TASKS)
  val Filter = FontAwesome(FILTER)
  val Briefcase = FontAwesome(BRIEFCASE)
  val ArrowsAlt = FontAwesome(ARROWS_ALT)
  val Users = FontAwesome(USERS)
  val Link = FontAwesome(LINK)
  val Cloud = FontAwesome(CLOUD)
  val Flask = FontAwesome(FLASK)
  val Scissors = FontAwesome(SCISSORS)
  val FilesO = FontAwesome(FILES_O)
  val Paperclip = FontAwesome(PAPERCLIP)
  val FloppyO = FontAwesome(FLOPPY_O)
  val Square = FontAwesome(SQUARE)
  val Bars = FontAwesome(BARS)
  val ListUl = FontAwesome(LIST_UL)
  val ListOl = FontAwesome(LIST_OL)
  val Strikethrough = FontAwesome(STRIKETHROUGH)
  val Underline = FontAwesome(UNDERLINE)
  val Table = FontAwesome(TABLE)
  val Magic = FontAwesome(MAGIC)
  val Truck = FontAwesome(TRUCK)
  val Pinterest = FontAwesome(PINTEREST)
  val PinterestSquare = FontAwesome(PINTEREST_SQUARE)
  val GooglePlusSquare = FontAwesome(GOOGLE_PLUS_SQUARE)
  val GooglePlus = FontAwesome(GOOGLE_PLUS)
  val Money = FontAwesome(MONEY)
  val CaretDown = FontAwesome(CARET_DOWN)
  val CaretUp = FontAwesome(CARET_UP)
  val CaretLeft = FontAwesome(CARET_LEFT)
  val CaretRight = FontAwesome(CARET_RIGHT)
  val Columns = FontAwesome(COLUMNS)
  val Sort = FontAwesome(SORT)
  val SortAsc = FontAwesome(SORT_ASC)
  val SortDesc = FontAwesome(SORT_DESC)
  val Envelope = FontAwesome(ENVELOPE)
  val Linkedin = FontAwesome(LINKEDIN)
  val Undo = FontAwesome(UNDO)
  val Gavel = FontAwesome(GAVEL)
  val Tachometer = FontAwesome(TACHOMETER)
  val CommentO = FontAwesome(COMMENT_O)
  val CommentsO = FontAwesome(COMMENTS_O)
  val Bolt = FontAwesome(BOLT)
  val Sitemap = FontAwesome(SITEMAP)
  val Umbrella = FontAwesome(UMBRELLA)
  val Clipboard = FontAwesome(CLIPBOARD)
  val LightbulbO = FontAwesome(LIGHTBULB_O)
  val Exchange = FontAwesome(EXCHANGE)
  val CloudDownload = FontAwesome(CLOUD_DOWNLOAD)
  val CloudUpload = FontAwesome(CLOUD_UPLOAD)
  val UserMd = FontAwesome(USER_MD)
  val Stethoscope = FontAwesome(STETHOSCOPE)
  val Suitcase = FontAwesome(SUITCASE)
  val BellO = FontAwesome(BELL_O)
  val Coffee = FontAwesome(COFFEE)
  val Cutlery = FontAwesome(CUTLERY)
  val FileTextO = FontAwesome(FILE_TEXT_O)
  val BuildingO = FontAwesome(BUILDING_O)
  val HospitalO = FontAwesome(HOSPITAL_O)
  val Ambulance = FontAwesome(AMBULANCE)
  val Medkit = FontAwesome(MEDKIT)
  val FighterJet = FontAwesome(FIGHTER_JET)
  val Beer = FontAwesome(BEER)
  val HSquare = FontAwesome(H_SQUARE)
  val PlusSquare = FontAwesome(PLUS_SQUARE)
  val AngleDoubleLeft = FontAwesome(ANGLE_DOUBLE_LEFT)
  val AngleDoubleRight = FontAwesome(ANGLE_DOUBLE_RIGHT)
  val AngleDoubleUp = FontAwesome(ANGLE_DOUBLE_UP)
  val AngleDoubleDown = FontAwesome(ANGLE_DOUBLE_DOWN)
  val AngleLeft = FontAwesome(ANGLE_LEFT)
  val AngleRight = FontAwesome(ANGLE_RIGHT)
  val AngleUp = FontAwesome(ANGLE_UP)
  val AngleDown = FontAwesome(ANGLE_DOWN)
  val Desktop = FontAwesome(DESKTOP)
  val Laptop = FontAwesome(LAPTOP)
  val Tablet = FontAwesome(TABLET)
  val Mobile = FontAwesome(MOBILE)
  val CircleO = FontAwesome(CIRCLE_O)
  val QuoteLeft = FontAwesome(QUOTE_LEFT)
  val QuoteRight = FontAwesome(QUOTE_RIGHT)
  val Spinner = FontAwesome(SPINNER)
  val Circle = FontAwesome(CIRCLE)
  val Reply = FontAwesome(REPLY)
  val GitHubAlt = FontAwesome(GITHUB_ALT)
  val FolderO = FontAwesome(FOLDER_O)
  val FolderOpenO = FontAwesome(FOLDER_OPEN_O)
  val SmileO = FontAwesome(SMILE_O)
  val FrownO = FontAwesome(FROWN_O)
  val MehO = FontAwesome(MEH_O)
  val Gamepad = FontAwesome(GAMEPAD)
  val KeyboardO = FontAwesome(KEYBOARD_O)
  val FlagO = FontAwesome(FLAG_O)
  val FlagCheckered = FontAwesome(FLAG_CHECKERED)
  val Terminal = FontAwesome(TERMINAL)
  val Code = FontAwesome(CODE)
  val ReplyAll = FontAwesome(REPLY_ALL)
  val MailReplyAll = FontAwesome(MAIL_REPLY_ALL)
  val StarHalfO = FontAwesome(STAR_HALF_O)
  val LocationArrow = FontAwesome(LOCATION_ARROW)
  val Crop = FontAwesome(CROP)
  val CodeFork = FontAwesome(CODE_FORK)
  val ChainBroken = FontAwesome(CHAIN_BROKEN)
  val Question = FontAwesome(QUESTION)
  val Info = FontAwesome(INFO)
  val Exclamation = FontAwesome(EXCLAMATION)
  val Superscript = FontAwesome(SUPERSCRIPT)
  val Subscript = FontAwesome(SUBSCRIPT)
  val Eraser = FontAwesome(ERASER)
  val PuzzlePiece = FontAwesome(PUZZLE_PIECE)
  val Microphone = FontAwesome(MICROPHONE)
  val MicrophoneSlash = FontAwesome(MICROPHONE_SLASH)
  val Shield = FontAwesome(SHIELD)
  val CalendarO = FontAwesome(CALENDAR_O)
  val FireExtinguisher = FontAwesome(FIRE_EXTINGUISHER)
  val Rocket = FontAwesome(ROCKET)
  val Maxcdn = FontAwesome(MAXCDN)
  val ChevronCircleLeft = FontAwesome(CHEVRON_CIRCLE_LEFT)
  val ChevronCircleRight = FontAwesome(CHEVRON_CIRCLE_RIGHT)
  val ChevronCircleUp = FontAwesome(CHEVRON_CIRCLE_UP)
  val ChevronCircleDown = FontAwesome(CHEVRON_CIRCLE_DOWN)
  val HTML5 = FontAwesome(com.vaadin.server.FontAwesome.HTML5)
  val CSS3 = FontAwesome(com.vaadin.server.FontAwesome.CSS3)
  val Anchor = FontAwesome(ANCHOR)
  val UnlockAlt = FontAwesome(UNLOCK_ALT)
  val Bullseye = FontAwesome(BULLSEYE)
  val EllipsisH = FontAwesome(ELLIPSIS_H)
  val EllipsisV = FontAwesome(ELLIPSIS_V)
  val RssSquare = FontAwesome(RSS_SQUARE)
  val PlayCircle = FontAwesome(PLAY_CIRCLE)
  val Ticket = FontAwesome(TICKET)
  val MinusSquare = FontAwesome(MINUS_SQUARE)
  val MinusSquareO = FontAwesome(MINUS_SQUARE_O)
  val LevelUp = FontAwesome(LEVEL_UP)
  val LevelDown = FontAwesome(LEVEL_DOWN)
  val CheckSquare = FontAwesome(CHECK_SQUARE)
  val PencilSquare = FontAwesome(PENCIL_SQUARE)
  val ExternalLinkSquare = FontAwesome(EXTERNAL_LINK_SQUARE)
  val ShareSquare = FontAwesome(SHARE_SQUARE)
  val Compass = FontAwesome(COMPASS)
  val CaretSquareODown = FontAwesome(CARET_SQUARE_O_DOWN)
  val CaretSquareOUp = FontAwesome(CARET_SQUARE_O_UP)
  val CaretSquareORight = FontAwesome(CARET_SQUARE_O_RIGHT)
  val EUR = FontAwesome(com.vaadin.server.FontAwesome.EUR)
  val GBP = FontAwesome(com.vaadin.server.FontAwesome.GBP)
  val USD = FontAwesome(com.vaadin.server.FontAwesome.USD)
  val INR = FontAwesome(com.vaadin.server.FontAwesome.INR)
  val JPY = FontAwesome(com.vaadin.server.FontAwesome.JPY)
  val RUB = FontAwesome(com.vaadin.server.FontAwesome.RUB)
  val KRW = FontAwesome(com.vaadin.server.FontAwesome.KRW)
  val BTC = FontAwesome(com.vaadin.server.FontAwesome.BTC)
  val File = FontAwesome(FILE)
  val FileText = FontAwesome(FILE_TEXT)
  val SortAlphaAsc = FontAwesome(SORT_ALPHA_ASC)
  val SortAlphaDesc = FontAwesome(SORT_ALPHA_DESC)
  val SortAmountAsc = FontAwesome(SORT_AMOUNT_ASC)
  val SortAmountDesc = FontAwesome(SORT_AMOUNT_DESC)
  val SortNumericAsc = FontAwesome(SORT_NUMERIC_ASC)
  val SortNumericDesc = FontAwesome(SORT_NUMERIC_DESC)
  val ThumbsUp = FontAwesome(THUMBS_UP)
  val ThumbsDown = FontAwesome(THUMBS_DOWN)
  val YoutubeSquare = FontAwesome(YOUTUBE_SQUARE)
  val Youtube = FontAwesome(YOUTUBE)
  val Xing = FontAwesome(XING)
  val XingSquare = FontAwesome(XING_SQUARE)
  val YoutubePlay = FontAwesome(YOUTUBE_PLAY)
  val Dropbox = FontAwesome(DROPBOX)
  val StackOverflow = FontAwesome(STACK_OVERFLOW)
  val Instagram = FontAwesome(INSTAGRAM)
  val Flickr = FontAwesome(FLICKR)
  val Adn = FontAwesome(ADN)
  val Bitbucket = FontAwesome(BITBUCKET)
  val BitbucketSquare = FontAwesome(BITBUCKET_SQUARE)
  val Tumblr = FontAwesome(TUMBLR)
  val TumblrSquare = FontAwesome(TUMBLR_SQUARE)
  val LongArrowDown = FontAwesome(LONG_ARROW_DOWN)
  val LongArrowUp = FontAwesome(LONG_ARROW_UP)
  val LongArrowLeft = FontAwesome(LONG_ARROW_LEFT)
  val LongArrowRight = FontAwesome(LONG_ARROW_RIGHT)
  val Apple = FontAwesome(APPLE)
  val Windows = FontAwesome(WINDOWS)
  val Android = FontAwesome(ANDROID)
  val Linux = FontAwesome(LINUX)
  val Dribbble = FontAwesome(DRIBBBLE)
  val Skype = FontAwesome(SKYPE)
  val Foursquare = FontAwesome(FOURSQUARE)
  val Trello = FontAwesome(TRELLO)
  val Female = FontAwesome(FEMALE)
  val Male = FontAwesome(MALE)
  val Gittip = FontAwesome(GITTIP)
  val SunO = FontAwesome(SUN_O)
  val MoonO = FontAwesome(MOON_O)
  val Archive = FontAwesome(ARCHIVE)
  val Bug = FontAwesome(BUG)
  val VK = FontAwesome(com.vaadin.server.FontAwesome.VK)
  val Weibo = FontAwesome(WEIBO)
  val Renren = FontAwesome(RENREN)
  val Pagelines = FontAwesome(PAGELINES)
  val StackExchange = FontAwesome(STACK_EXCHANGE)
  val ArrowCircleORight = FontAwesome(ARROW_CIRCLE_O_RIGHT)
  val ArrowCircleOLeft = FontAwesome(ARROW_CIRCLE_O_LEFT)
  val CaretSquareOLeft = FontAwesome(CARET_SQUARE_O_LEFT)
  val DotCircleO = FontAwesome(DOT_CIRCLE_O)
  val Wheelchair = FontAwesome(WHEELCHAIR)
  val VimeoSquare = FontAwesome(VIMEO_SQUARE)
  val TRY = FontAwesome(com.vaadin.server.FontAwesome.TRY)
  val PlusSquareO = FontAwesome(PLUS_SQUARE_O)

  private def apply(font: com.vaadin.server.FontAwesome) = {
    new FontAwesome(new com.vaadin.server.FontIcon with FontIconMixin {
      override def getMIMEType: String = font.getMIMEType
      override def getHtml: String = font.getHtml
      override def getCodepoint: Int = font.getCodepoint
      override def getFontFamily: String = font.getFontFamily
    })
  }

  //com.vaadin.server.FontAwesome.values.foreach { v =>
  //  val scalaName = v.name().split("_").map(p =>  p.substring(0, 1).toUpperCase + p.substring(1).toLowerCase).mkString
  //  println("val " + scalaName + " = FontAwesome(" + v.name() + ")")
  //}
}

/**
 * @see com.vaadin.server.FontAwesome
 * @author Henri Kerola / Vaadin
 */
class FontAwesome(override val pResource: com.vaadin.server.FontIcon with FontIconMixin) extends FontIcon